<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <script>
    // 声明generator函数  异步编程的解决方案 异步编程同步编写
  //   发了多个请求 
  //   async 表示标识异步函数
  //  let res= await get1();
  //   console.log(res);
  //  let res1=await get2()
  //  let res2= get3()
    // 特征
    // 1.function 关键字和函数名之间一定要有*号
    // 2.函数内部使用yield表达式
    function* test(){
      // .....10行代码
      // return 返回值 //后面的代码不执行
      // ....10行代码
      // return 返回值
      // ...10行代码
      // return 返回值
      // 1个yield就是一个状态 一个yield就是代码运行节点
      //  执行一次迭代器next方法 到第一个yield
      yield 1;//返回值 1是对状态的描述
      
      yield 2;//返回值
     
      yield 3;//返回值
    }
    let result=test(); //Generator{}
    console.log(result);
    console.log(result.next());//Object { value: 1, done: false }
    console.log(result.next());//Object { value: 2, done: false }
  </script>
</head>
<body>
  
</body>
</html>